(ls-lisp-classify): Propertize file name before concatenating the type
authorEli Zaretskii <eliz@gnu.org>
Wed, 28 Jan 2009 19:01:42 +0000 (19:01 +0000)
committerEli Zaretskii <eliz@gnu.org>
Wed, 28 Jan 2009 19:01:42 +0000 (19:01 +0000)
indicating character.
(ls-lisp-format): Don't propertize file-name if ls-lisp-classify already did.

lisp/ls-lisp.el

index 7c9c9e61688950473420bb5f5c83174149120640..0374b9bbaed59fa339ab88ec571d3e36041880c9 100644 (file)
@@ -531,13 +531,17 @@ for directory, string (name linked to) for symbolic link, or nil."
         (type (cadr filedata)))
     (cond (type
           (cons
-           (concat file-name (if (eq type t) "/" "@"))
+           (concat (propertize file-name 'dired-filename t)
+                   (if (eq type t) "/" "@"))
            (cdr filedata)))
          ((string-match "x" (nth 9 filedata))
           (cons
-           (concat file-name "*")
+           (concat (propertize file-name 'dired-filename t) "*")
            (cdr filedata)))
-         (t filedata))))
+         (t
+          (cons
+           (propertize file-name 'dired-filename t)
+           (cdr filedata))))))
 
 (defun ls-lisp-extension (filename)
   "Return extension of FILENAME (ignoring any version extension)
@@ -632,7 +636,9 @@ SWITCHES, TIME-INDEX and NOW give the full switch list and time data."
            " "
            (ls-lisp-format-time file-attr time-index now)
            " "
-           (propertize file-name 'dired-filename t)
+           (if (not (memq ?F switches)) ; ls-lisp-classify already did that
+               (propertize file-name 'dired-filename t)
+             file-name)
            (if (stringp file-type)     ; is a symbolic link
                (concat " -> " file-type))
            "\n"